/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package DB;

import java.sql.*;

/**
 *Mittels einen einfachen SQL Befehls, wird die Verbindung zur Datenbank getestet.
 *Anwendungsfall: Es sollen alle Flüge, die in der Datenbank vorhanden sind ausgegeben werden.
 * @author Stefan Fellner
 */
public class JdbcDemo {

	public static void main(String[] args) {
		try {
			System.out.println("Demo: Einen Flughafen in die Datenbank schreiben!");
                        //Wenn Treiber vorhanden, wird ein "Treiber ok!" ausgegeben
			Class.forName("com.mysql.jdbc.Driver").newInstance();
			System.out.println("Treiber ok!");

			Connection con = null;

			try {
				con = DriverManager.getConnection(
					"jdbc:mysql://mars.iuk.hdm-stuttgart.de/u-sf045?user=sf045&password=uuKohqu4ie&characterEncoding=UTF8");
				System.out.println("Connection ok!");


                                //Die Instanz stmt hält die SQL Abfrage fest
				Statement stmt = con.createStatement();

                                //Variablen, die im Statement verwendet werden, müssen initialisiert und deklariert werden
                                String internationalId  ="JFK";
                                String portName         ="John F. Kennedy Airport";
                                String portCity         ="New York";
                                String portCountry      ="USA";
				int result =
					stmt.executeUpdate("INSERT INTO airport (internationalId,portName,portCity,portCountry) " +
                            "VALUES (" +
                            "'" + internationalId + "'" + ", " +
                            "'" + portName + "'" + ", " +
                            "'" + portCity + "'" + ", " +
                            "'" + portCountry + "'" +  ");");

				/*
				 * In result finden Sie dann einen Rückgabewert, der signalisiert, ob
				 * die Aktion erfolgreich war oder micht. Die Bedeutung der einzelnen
				 * Integer-Werte findet man in der Java-Referenz.
				 */
				System.out.println("Ergebnis: " + result);
			} catch (SQLException e2) {
				e2.printStackTrace();
			}

			con.close();

		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
}
